package 程序员面试金典;

import java.util.ArrayList;
import java.util.Arrays;

public class 零矩阵 {

    public void setZeroes(int[][] matrix) {
        int row = matrix.length;
        int col = matrix[0].length;
        boolean[][] booleans = new boolean[row][col];
        for (int i = 0; i < row; i++) {
            for (int j = 0; j < col; j++) {
                if (matrix[i][j]==0)
                    booleans[i][j]=true;
            }
        }
        ArrayList<Integer> list = new ArrayList<>();
        for (int i = 0; i < row; i++) {
            for (int j = 0; j < col; j++) {
                if (matrix[i][j]==0 && booleans[i][j]){
                    Arrays.fill(matrix[i],0);
                    list.add(j);
                }
            }
        }
        for (Integer j : list) {
            for (int i = 0; i < row; i++) {
                matrix[i][j]=0;
            }
        }
    }
}
